package com.zhang.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhang.pojo.InputCarBean;
import com.zhang.pojo.OutputCarBean;
import com.zhang.pojo.ProductBean;

import java.util.List;

public interface IProductService {


    /**
     * 动态条件查询并分页
     * @param page 分页对象
     * @param name 商品名
     * @param typeId 类型id
     * @param startNum 起始数量
     * @param endNum 结束数量
     * @return 分页集合
     */
    IPage<ProductBean> findByItemAndPage(Page<ProductBean> page,String name,Integer typeId, Integer startNum, Integer endNum);

    /**
     * 根据id查询商品
     * @param id 商品id
     * @return 商品对象
     */
    ProductBean findById(int id);

    /***
     * 根据商品id修改销售价
     * @param id 商品id
     * @param money 销售价
     */
    void updateMoney(int id,int money );

    /***
     * 根据商品id修改数量
     * @param id 商品id
     * @param number 数量
     */
    void updateNum(int id,int number);


    /**
     * 添加库存
     * @param inputCarBean 入库购物车
     */
    void add(List<InputCarBean> inputCarBean);


    /**
     * 根据id删除库存
     * @param id 商品id
     */
    void del(int id);

    /**
     * 出库
     * @param outputCarBeans 出库购物车
     */
    void output(List<OutputCarBean> outputCarBeans);

}
